最新の ECS に最適化された AMI を取得する方法を教えてください
困っていた内容
ECS on EC2 で、コンテナを実行しています。
コンテナインスタンスに ECS に最適化された AMI を使用していますが、最新版の AMI に更新したいです。
最新の ECS に最適化された AMI の AMI ID を確認する方法を教えてください。
どう対応すればいいの?
パブリックパラメータを確認してください。
# Amazon Linux 2023 AMI ベースの場合 $ aws ssm get-parameters \ --names /aws/service/ecs/optimized-ami/amazon-linux-2023/recommended/image_id \ --query "Parameters[0].Value" "ami-0a09fe686e5ce143c"
最新の ECS に最適化された AMI の AMI ID は AWS Systems Manager のパブリックパラメータとして公開されています。
パラメータはベースとなる OS 等の種類毎に最新版が提供され、パラメータ名を変えると AMI のメタデータも取得できます。
# Amazon Linux 2023 (arm64) $ aws ssm get-parameters \ --names /aws/service/ecs/optimized-ami/amazon-linux-2023/arm64/recommended/image_id \ --query "Parameters[0].Value" # Amazon Linux 2 $ aws ssm get-parameters \ --names /aws/service/ecs/optimized-ami/amazon-linux-2/kernel-5.10/recommended/image_id \ --query "Parameters[0].Value" # Windows Server 2022 Full $ aws ssm get-parameters \ --names /aws/service/ami-windows-latest/Windows_Server-2022-English-Full-ECS_Optimized/image_id \ --query "Parameters[0].Value"
$ aws ssm get-parameters \ --names /aws/service/ecs/optimized-ami/amazon-linux-2023/recommended { "Parameters": [ { "Name": "/aws/service/ecs/optimized-ami/amazon-linux-2023/recommended", "Type": "String", "Value": "{\"ecs_agent_version\":\"1.82.4\",\"ecs_runtime_version\":\"Docker version 25.0.3\",\"image_id\":\"ami-0a09fe686e5ce143c\",\"image_name\":\"al2023-ami-ecs-hvm-2023.0.20240515-kernel-6.1-x86_64\",\"image_version\":\"2023.0.20240515\",\"os\":\"Amazon Linux 2023\",\"schema_version\":1,\"source_image_name\":\"al2023-ami-minimal-2023.4.20240513.0-kernel-6.1-x86_64\"}", "Version": 37, "LastModifiedDate": "2024-05-21T00:07:40.823000+09:00", "ARN": "arn:aws:ssm:ap-northeast-1::parameter/aws/service/ecs/optimized-ami/amazon-linux-2023/recommended", "DataType": "text" } ], "InvalidParameters": [] }
$ aws ssm get-parameters \
--names /aws/service/ecs/optimized-ami/amazon-linux-2023/recommended \
--query "Parameters[0].Value" --output text
{
"ecs_agent_version": "1.84.0",
"ecs_runtime_version": "Docker version 25.0.3",
"image_id": "ami-0a340424294db766c",
"image_name": "al2023-ami-ecs-hvm-2023.0.20240702-kernel-6.1-x86_64",
"image_version": "2023.0.20240702",
"os": "Amazon Linux 2023",
"schema_version": 1,
"source_image_name": "al2023-ami-minimal-2023.5.20240701.0-kernel-6.1-x86_64"
}
参考資料
- ECS 最適化 AMI パブリックパラメータを呼び出す - AWS Systems Manager
Amazon Elastic Container Service (Amazon ECS) サービスは、最新の Amazon ECS 最適化 Amazon Machine Images (AMIs) の名前をパブリックパラメータとして公開します。最適化された AMI にはバグ修正および機能のアップデートが含まれているため、Amazon ECS 用の新しい Amazon Elastic Compute Cloud (Amazon EC2) クラスターを作成するときにこの AMIs を使用することをお勧めします。
- Amazon ECS に最適化された AMI メタデータを取得する - Amazon Elastic Container Service
- Amazon ECS に最適化された AMI メタデータを取得する - Amazon Elastic Container Service